#pragma once
#include "define.h"
#include "Model.h"
#include "CPU.h"
#include "Human.h"
#include <vector>
#include <iostream>
#include <fstream>

using namespace std;

class CRender
{
public:
	CRender(void);
	~CRender(void);

	int Initialization(int width, int height);
	int Render(const CModel model);
	void Present();
	
	int TitleScreen();
	int MainMenu();
	int LoadScreen();
	int PickPlayer();
	int SaveScreen();
	int SetPlayers();
	int TestScreen();
	int HelpScreen();
	int GameScreen();
	int WinScreen();

	
	int StatusScreen();

	int PlayStatus();

private:
	//char FinalCharMatrix;
	int m_iWidth;
	int m_iHeight;
	int m_iMapWidth;
	int m_iMapHeight;
	vector<char> m_vFinalCharMatrix;
	vector<char> m_vMap;
	
	void ClearFinalMatrix();
	void Border();
	void Text(const char *string, int row, int shift);
	void Text(const char c, int row, int shift);
	void Text(const int i, int row, int shift);

	int Board();
	int Keyword();
	int Square(int x, int y, char c);
	void Position();
	void PositionBoard(int order, int x, int y, int icon);

	CModel m_Model;

	vector<CCPU> m_CPU;
	vector<CHuman> m_Human;
};
